package Song.Han.Demo01;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;

/*
    一次写多个字节的方法：
        write(byte[] b)
        write(byte[] b, int off, int len):
            int off :数组开始位置
            int len :写几个字节
*/
public class Demo02OutputStream {
    public static void main(String[] args) throws IOException {

        FileOutputStream fos = new FileOutputStream("E:\\IDeaProject\\Day14\\src\\Song\\Han\\Demo01\\b.txt");
/*
        //在文件中显示100
        fos.write(49);
        fos.write(48);
        fos.write(48);
*/

/*
        一次写多个字节:
            如果写的第一个字节是正数（0~127），则会查询ASCII表
            如果写的第一个字节是负数数，那么第一个字节和第二个字节会组成中文显示，会查询系统默认码表（GBK）
*/
        byte[] bytes1 = {65,66,67,68,69};//ABCDE
        //byte[] bytes2 = {-65,-66,-67,68};//烤紻
        fos.write(bytes1);
        //fos.write(bytes2);

        fos.write(bytes1,1,2);//BC

        //写入字符串方法

        //fos.write("你好".getBytes());//浣犲ソ   UTF-8编译的"你好"，在JVM通过GBK格式构建字符串，再使用UTF-8格式输出，变成"浣犲ソ"
        fos.close();
    }
}
